﻿using System;
using SharpSqlAnalyzer.nodes;
using SharpSqlAnalyzer.nodes.mssql;

namespace SharpSqlAnalyzer.stmt.mssql
{
	// Token: 0x02000179 RID: 377
	public class TMssqlGoTo : TCustomSqlStatement
	{
		// Token: 0x06000D21 RID: 3361 RVA: 0x00308565 File Offset: 0x00306765
		public TMssqlGoTo(EDbVendor dbvendor) : base(dbvendor)
		{
			this.sqlstatementtype = ESqlStatementType.sstmssqlgoto;
		}

		// Token: 0x06000D22 RID: 3362 RVA: 0x00308579 File Offset: 0x00306779
		internal override void buildsql()
		{
		}

		// Token: 0x06000D23 RID: 3363 RVA: 0x0030857B File Offset: 0x0030677B
		internal override void clear()
		{
		}

		// Token: 0x06000D24 RID: 3364 RVA: 0x0030857D File Offset: 0x0030677D
		internal override string getasprettytext()
		{
			return "";
		}

		// Token: 0x06000D25 RID: 3365 RVA: 0x00308584 File Offset: 0x00306784
		internal virtual void iterate(TVisitorAbs pvisitor)
		{
		}

		// Token: 0x17000269 RID: 617
		// (get) Token: 0x06000D26 RID: 3366 RVA: 0x00308586 File Offset: 0x00306786
		// (set) Token: 0x06000D27 RID: 3367 RVA: 0x0030858E File Offset: 0x0030678E
		public virtual TObjectName Label
		{
			get
			{
				return this.label;
			}
			set
			{
				this.label = value;
			}
		}

		// Token: 0x06000D28 RID: 3368 RVA: 0x00308598 File Offset: 0x00306798
		public override int doParseStatement(TCustomSqlStatement psql)
		{
			if (this.rootNode == null)
			{
				return -1;
			}
			TMssqlGotoSqlNode tmssqlGotoSqlNode = (TMssqlGotoSqlNode)this.rootNode;
			base.doParseStatement(psql);
			this.label = tmssqlGotoSqlNode.Label;
			return 0;
		}

		// Token: 0x06000D29 RID: 3369 RVA: 0x003085D0 File Offset: 0x003067D0
		public override void accept(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x06000D2A RID: 3370 RVA: 0x003085E0 File Offset: 0x003067E0
		public override void acceptChildren(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x04001301 RID: 4865
		private TObjectName label;
	}
}
